ãã©ãŒã«ããã¬ã©ã³ã¹ã®ããã®ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ãæ¢æ±ããã¢ããªã±ãŒã·ã§ã³ã®å埩åãšå®å®æ§ãåäžãããŸãããã®å®è£ ãå©ç¹ã倿§ãªæ¥çãã°ããŒãã«ãªæèã§ã®å®äŸãåŠã³ãŸãããã
ãµãŒããããã¬ãŒã«ãŒïŒææ°ã¢ããªã±ãŒã·ã§ã³ã®ããã®å ç¢ãªãã©ãŒã«ããã¬ã©ã³ã¹ãã¿ãŒã³
ãœãããŠã§ã¢éçºã®é åãç¹ã«ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã忣ã·ã¹ãã ã«ãããŠãã¢ããªã±ãŒã·ã§ã³ã®å埩åã確ä¿ããããšã¯æãéèŠã§ããã³ã³ããŒãã³ããæ éããå Žåãé£éçãªé害ãé²ããå®å®çã§å¿çæ§ã®é«ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãç¶æããããšãäžå¯æ¬ ã§ãããµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã¯ããã®ãããªã·ããªãªã§ãã©ãŒã«ããã¬ã©ã³ã¹ãšåªé ãªå£åïŒã°ã¬ãŒã¹ãã«ãã°ã©ããŒã·ã§ã³ïŒãéæããããã®åŒ·åãªãœãªã¥ãŒã·ã§ã³ãšããŠç»å ŽããŸãã
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ãšã¯ïŒ
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã¯ãé黿µã«ããæå·ããåè·¯ãä¿è·ãã黿°ã®åè·¯ãã¬ãŒã«ãŒããçæ³ãåŸãŠããŸãããœãããŠã§ã¢ã§ã¯ã倱æããå¯èœæ§ã®ããæäœã®ãããã·ãšããŠæ©èœããã¢ããªã±ãŒã·ã§ã³ã倱æããå¯èœæ§ã®é«ãæäœãç¹°ãè¿ãå®è¡ããããšããã®ãé²ããŸãããã®ç©æ¥µçãªã¢ãããŒãã«ããããªãœãŒã¹ã®æµªè²»ãé¿ããã¬ã€ãã³ã·ãåæžããæçµçã«ã·ã¹ãã ã®å®å®æ§ãåäžãããŸãã
äžå¿çãªèãæ¹ã¯ããµãŒãã¹ãäžè²«ããŠå¿çã«å€±æãããšããµãŒããããã¬ãŒã«ãŒãããªãŒãã³ãã«ãªãããã®ãµãŒãã¹ãžã®ãããªããªã¯ãšã¹ããé²ããšãããã®ã§ããå®çŸ©ãããæéã®åŸããµãŒããããã¬ãŒã«ãŒã¯ãããŒããªãŒãã³ãç¶æ ã«å ¥ããéãããæ°ã®ãã¹ããªã¯ãšã¹ããééãããŸãããããã®ãªã¯ãšã¹ããæåãããšããµãŒããããã¬ãŒã«ãŒã¯ãã¯ããŒãºãããéåžžã®æäœãåéããŸãã倱æããå ŽåããµãŒããããã¬ãŒã«ãŒã¯ãªãŒãã³ã®ãŸãŸã§ããã®ãµã€ã¯ã«ãç¹°ãè¿ãããŸãã
ãµãŒããããã¬ãŒã«ãŒã®ç¶æ
ãµãŒããããã¬ãŒã«ãŒã¯3ã€ã®ç°ãªãç¶æ ã§åäœããŸãïŒ
- ã¯ããŒãºïŒClosedïŒ: ããã¯éåžžã®åäœç¶æ ã§ãããªã¯ãšã¹ãã¯ãµãŒãã¹ã«çŽæ¥ã«ãŒãã£ã³ã°ãããŸãããµãŒããããã¬ãŒã«ãŒã¯ãããã®ãªã¯ãšã¹ãã®æåçãšå€±æçãç£èŠããŸãã倱æçãäºåã«å®çŸ©ããããããå€ãè¶ ãããšããµãŒããããã¬ãŒã«ãŒã¯ãªãŒãã³ç¶æ ã«ç§»è¡ããŸãã
- ãªãŒãã³ïŒOpenïŒ: ãã®ç¶æ ã§ã¯ããµãŒããããã¬ãŒã«ãŒã¯ãã¹ãŠã®ãªã¯ãšã¹ããã·ã§ãŒããµãŒããããããå³åº§ã«ãšã©ãŒãŸãã¯ãã©ãŒã«ããã¯å¿çãè¿ããŸããããã«ãããã¢ããªã±ãŒã·ã§ã³ãæ éäžã®ãµãŒãã¹ããªãã©ã€ã§å§åããã®ãé²ãããµãŒãã¹ãå埩ããæéãäžããŸãã
- ããŒããªãŒãã³ïŒHalf-OpenïŒ: ãªãŒãã³ç¶æ ã§æå®ãããã¿ã€ã ã¢ãŠãæéãçµéãããšããµãŒããããã¬ãŒã«ãŒã¯ããŒããªãŒãã³ç¶æ ã«ç§»è¡ããŸãããã®ç¶æ ã§ã¯ãéãããæ°ã®ãã¹ããªã¯ãšã¹ãããµãŒãã¹ã«ééãããŸãããããã®ãªã¯ãšã¹ããæåããå ŽåããµãŒããããã¬ãŒã«ãŒã¯ã¯ããŒãºç¶æ ã«æ»ããŸãããã¹ããªã¯ãšã¹ãã®ããããã倱æããå ŽåããµãŒããããã¬ãŒã«ãŒã¯ãªãŒãã³ç¶æ ã«æ»ããŸãã
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã䜿çšããå©ç¹
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ãå®è£ ããããšã«ã¯ãããã€ãã®éèŠãªå©ç¹ããããŸãïŒ
- å埩åã®åäž: æ éäžã®ãµãŒãã¹ãžã®ãªã¯ãšã¹ããé²ãããšã§ãé£éçãªé害ãé²ããã¢ããªã±ãŒã·ã§ã³ã®å¯çšæ§ãç¶æããŸãã
- å®å®æ§ã®åŒ·å: æ éäžã®ãµãŒãã¹ãžã®ãªãã©ã€ã«ãã£ãŠã¢ããªã±ãŒã·ã§ã³ãå§åãããã®ãé²ãããªãœãŒã¹ãç¯çŽããå šäœçãªå®å®æ§ãåäžãããŸãã
- ã¬ã€ãã³ã·ã®åæž: æ éäžã®ãµãŒãã¹ããã®å¿çãåŸ ã€ããšã«ããäžå¿ èŠãªé å»¶ãé¿ãããŠãŒã¶ãŒãžã®å¿çæéãççž®ããŸãã
- åªé ãªå£åïŒã°ã¬ãŒã¹ãã«ãã°ã©ããŒã·ã§ã³ïŒ: ãµãŒãã¹ãå©çšã§ããªãå Žåã«ã¢ããªã±ãŒã·ã§ã³ã®æ©èœãåªé ã«å£åãããåã«å€±æãããããåãå ¥ãããããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããŸãã
- èªåå埩: æ éäžã®ãµãŒãã¹ãåã³å©çšå¯èœã«ãªã£ããšãã«èªåçã«å埩ããããŠã³ã¿ã€ã ãæå°éã«æããŸãã
- é害ã®åé¢: ã·ã¹ãã å ã®é害ãåé¢ããä»ã®ã³ã³ããŒãã³ããžã®æ³¢åãé²ããŸãã
å®è£ ã«é¢ããèæ ®äºé
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã广çã«å®è£ ããã«ã¯ãããã€ãã®èŠçŽ ãæ éã«èæ ®ããå¿ èŠããããŸãïŒ
- 倱æã®ãããå€: ãµãŒããããã¬ãŒã«ãŒããªãŒãã³ããã¿ã€ãã³ã°ã決å®ããããã®ãããå€ãããã¯ç¹å®ã®ãµãŒãã¹ãšã¢ããªã±ãŒã·ã§ã³ã®èŠä»¶ã«åºã¥ããŠæ éã«èª¿æŽããå¿ èŠããããŸããäœããããå€ã¯æ©ãããããªããã«ã€ãªããå¯èœæ§ããããé«ããããå€ã¯ååãªä¿è·ãæäŸããªãå¯èœæ§ããããŸãã
- ã¿ã€ã ã¢ãŠãæé: ãµãŒããããã¬ãŒã«ãŒããªãŒãã³ç¶æ ããããŒããªãŒãã³ç¶æ ã«ç§»è¡ãããŸã§ã®æéããã®æéã¯ãæ éäžã®ãµãŒãã¹ãå埩ããã®ã«ååãªé·ãã§ããã¹ãã§ãããããŠã³ã¿ã€ã ãæå°éã«æããããã«ååã«çãå¿ èŠããããŸãã
- ããŒããªãŒãã³ç¶æ ã®ãã¹ããªã¯ãšã¹ã: ããŒããªãŒãã³ç¶æ ã§èš±å¯ããããã¹ããªã¯ãšã¹ãã®æ°ããã®æ°ã¯ãå埩äžã®ãµãŒãã¹ãå§åãããªã¹ã¯ãæå°éã«æããã®ã«ååå°ããããã®å¥å šæ§ã«é¢ããä¿¡é Œã§ããææšãæäŸããã®ã«ååãªå€§ããã§ããå¿ èŠããããŸãã
- ãã©ãŒã«ããã¯ã¡ã«ããºã : ãµãŒããããã¬ãŒã«ãŒããªãŒãã³ããŠãããšãã«ãã©ãŒã«ããã¯å¿çãæ©èœãæäŸããããã®ã¡ã«ããºã ãããã«ã¯ããã£ãã·ã¥ãããããŒã¿ãè¿ãããŠãŒã¶ãŒãã¬ã³ããªãŒãªãšã©ãŒã¡ãã»ãŒãžã衚瀺ããããŸãã¯ãŠãŒã¶ãŒã代æ¿ãµãŒãã¹ã«ãªãã€ã¬ã¯ããããªã©ãå«ãŸããŸãã
- ç£èŠãšãã®ã³ã°: ãµãŒããããã¬ãŒã«ãŒã®ç¶æ ã倱æã®æ°ããªã¯ãšã¹ãã®æåçã远跡ããããã®å æ¬çãªç£èŠãšãã®ã³ã°ããã®æ å ±ã¯ãã·ã¹ãã ã®åäœãçè§£ããåé¡ã蚺æã»è§£æ±ºããããã«äžå¯æ¬ ã§ãã
- èšå®: 倱æã®ãããå€ãã¿ã€ã ã¢ãŠãæéãããŒããªãŒãã³ç¶æ ã®ãã¹ããªã¯ãšã¹ããªã©ã®èšå®ãã©ã¡ãŒã¿ãå€éšåããã³ãŒãã®å€æŽãå¿ èŠãšããã«åçãªèª¿æŽãå¯èœã«ããŸãã
å®è£ äŸ
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã¯ãæ§ã ãªããã°ã©ãã³ã°èšèªããã¬ãŒã ã¯ãŒã¯ã䜿çšããŠå®è£ ã§ããŸãã以äžã«ããã€ãã®äŸãæããŸãïŒ
JavaãšResilience4j
Resilience4jã¯ããµãŒããããã¬ãŒã«ãŒããªãã©ã€ãã¬ãŒããªããã¿ãŒããã«ã¯ããããªã©ãå æ¬çãªãã©ãŒã«ããã¬ã©ã³ã¹ããŒã«ã¹ã€ãŒããæäŸãã人æ°ã®Javaã©ã€ãã©ãªã§ãã以äžã¯åºæ¬çãªäŸã§ãïŒ
CircuitBreakerConfig circuitBreakerConfig = CircuitBreakerConfig.custom()
.failureRateThreshold(50)
.waitDurationInOpenState(Duration.ofMillis(1000))
.permittedNumberOfCallsInHalfOpenState(2)
.slidingWindowSize(10)
.build();
CircuitBreaker circuitBreaker = CircuitBreaker.of("myService", circuitBreakerConfig);
Supplier<String> decoratedSupplier = CircuitBreaker
.decorateSupplier(circuitBreaker, () -> myRemoteService.getData());
try {
String result = decoratedSupplier.get();
// çµæãåŠç
} catch (RequestNotPermitted e) {
// ãªãŒãã³ãµãŒããããåŠç
System.err.println("Circuit is open: " + e.getMessage());
}
PythonãšPybreaker
Pybreakerã¯ãã·ã³ãã«ã§äœ¿ãããããµãŒããããã¬ãŒã«ãŒã®å®è£ ãæäŸããPythonã©ã€ãã©ãªã§ãã
import pybreaker
breaker = pybreaker.CircuitBreaker(fail_max=3, reset_timeout=10)
@breaker
def unreliable_function():
# ããã«ä¿¡é Œæ§ã®äœã颿°åŒã³åºããèšè¿°
pass
try:
unreliable_function()
except pybreaker.CircuitBreakerError:
print("Circuit Breaker is open!")
.NETãšPolly
Pollyã¯ãéçºè ããªãã©ã€ããµãŒããããã¬ãŒã«ãŒãã¿ã€ã ã¢ãŠãããã«ã¯ããããªã©ã®ããªã·ãŒãæµæ¢ãã€æ§æå¯èœãªæ¹æ³ã§è¡šçŸã§ããã.NETã®å埩åããã³äžæçãªé害åŠçã©ã€ãã©ãªã§ãã
var circuitBreakerPolicy = Policy
.Handle<Exception>()
.CircuitBreakerAsync(
exceptionsAllowedBeforeBreaking: 3,
durationOfBreak: TimeSpan.FromSeconds(10),
onBreak: (exception, timespan) =>
{
Console.WriteLine("Circuit Breaker opened: " + exception.Message);
},
onReset: () =>
{
Console.WriteLine("Circuit Breaker reset.");
},
onHalfOpen: () =>
{
Console.WriteLine("Circuit Breaker half-opened.");
});
try
{
await circuitBreakerPolicy.ExecuteAsync(async () =>
{
// ããã«ä¿¡é Œæ§ã®äœãæäœãèšè¿°
await MyRemoteService.GetDataAsync();
});
}
catch (Exception ex)
{
Console.WriteLine("Handled exception: " + ex.Message);
}
å®äžçã§ã®äŸ
ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³ã¯ãæ§ã ãªæ¥çãã¢ããªã±ãŒã·ã§ã³ã§åºã䜿çšãããŠããŸãïŒ
- Eã³ããŒã¹: 決æžã²ãŒããŠã§ã€ãå©çšã§ããªãå Žåã®é£éçãªé害ãé²ããã·ã§ããã³ã°ã«ãŒããšãã§ãã¯ã¢ãŠãããã»ã¹ãæ©èœãç¶ããããšãä¿èšŒããŸããäŸïŒã°ããŒãã«ãªEã³ããŒã¹ãã©ãããã©ãŒã ã§ç¹å®ã®æ±ºæžãããã€ããŒãç¹å®ã®å°åïŒäŸïŒæ±åã¢ãžã¢ïŒã§ããŠã³ããå ŽåããµãŒããããã¬ãŒã«ãŒãéãããã©ã³ã¶ã¯ã·ã§ã³ã¯ãã®å°åã®ä»£æ¿ãããã€ããŒã«ã«ãŒãã£ã³ã°ãããããã·ã¹ãã ããŠãŒã¶ãŒã«ä»£æ¿ã®æ¯æãæ¹æ³ãæäŸã§ããŸãã
- éèãµãŒãã¹: ååŒã·ã¹ãã å ã®é害ãåé¢ããäžæ£ç¢ºãŸãã¯äžå®å šãªãã©ã³ã¶ã¯ã·ã§ã³ãé²ããŸããäŸïŒååŒã®ããŒã¯æã«ã蚌åžäŒç€Ÿã®æ³šæå·è¡ãµãŒãã¹ãæç¶çãªé害ãçµéšããå¯èœæ§ããããŸãããµãŒããããã¬ãŒã«ãŒã¯ããã®ãµãŒãã¹ãä»ããŠæ³šæãç¹°ãè¿ã詊ã¿ãããšãé²ããã·ã¹ãã ãéè² è·ãæœåšçãªééçæå€±ããä¿è·ããŸãã
- ã¯ã©ãŠãã³ã³ãã¥ãŒãã£ã³ã°: ã¯ã©ãŠããµãŒãã¹ã®äžæçãªåæ¢ã«å¯ŸåŠããã¢ããªã±ãŒã·ã§ã³ãå©çšå¯èœã§å¿çæ§ãç¶æããããšãä¿èšŒããŸããäŸïŒã°ããŒãã«ãªããŒã±ãã£ã³ã°ãã©ãããã©ãŒã ã§äœ¿çšãããã¯ã©ãŠãããŒã¹ã®ç»ååŠçãµãŒãã¹ãç¹å®ã®ããŒã¿ã»ã³ã¿ãŒã§å©çšã§ããªããªã£ãå ŽåããµãŒããããã¬ãŒã«ãŒãéãããªã¯ãšã¹ããå¥ã®ããŒã¿ã»ã³ã¿ãŒã«ã«ãŒãã£ã³ã°ãããããã©ãŒã«ããã¯ãµãŒãã¹ãå©çšããŠããã©ãããã©ãŒã ãŠãŒã¶ãŒãžã®åœ±é¿ãæå°éã«æããŸãã
- IoT: IoTããã€ã¹ãšã®æ¥ç¶æ§ã®åé¡ã管çããã·ã¹ãã ãæ éããããã€ã¹ã«ãã£ãŠå§åãããã®ãé²ããŸããäŸïŒç°ãªãå°ççãªå Žæã«å€æ°ã®æ¥ç¶ããã€ã¹ãæã€ã¹ããŒãããŒã ã·ã¹ãã ã§ãç¹å®ã®å°åïŒäŸïŒãšãŒãããïŒã®ç¹å®ã®ã¿ã€ãã®ã»ã³ãµãŒã誀ã£ãããŒã¿ãå ±åãå§ããããå¿çããªããªã£ããããå ŽåããµãŒããããã¬ãŒã«ãŒã¯ãããã®ã»ã³ãµãŒãåé¢ããã·ã¹ãã å šäœã®ããã©ãŒãã³ã¹ã«åœ±é¿ãäžããã®ãé²ãããšãã§ããŸãã
- ãœãŒã·ã£ã«ã¡ãã£ã¢: ãµãŒãããŒãã£APIçµ±åã®äžæçãªé害ã«å¯ŸåŠãããœãŒã·ã£ã«ã¡ãã£ã¢ãã©ãããã©ãŒã ãæ©èœãç¶ããããšãä¿èšŒããŸããäŸïŒãœãŒã·ã£ã«ã¡ãã£ã¢ãã©ãããã©ãŒã ãå€éšã³ã³ãã³ãã衚瀺ããããã«ãµãŒãããŒãã£APIã«äŸåããŠããããã®APIãããŠã³ããå ŽåããµãŒããããã¬ãŒã«ãŒã¯APIãžã®ç¹°ãè¿ãã®ãªã¯ãšã¹ããé²ãããã£ãã·ã¥ãããããŒã¿ãŸãã¯ããã©ã«ãã®ã¡ãã»ãŒãžããŠãŒã¶ãŒã«è¡šç€ºããŠãé害ã®åœ±é¿ãæå°éã«æããŸãã
ãµãŒããããã¬ãŒã«ãŒ vs. ãªãã©ã€ãã¿ãŒã³
ãµãŒããããã¬ãŒã«ãŒãšãªãã©ã€ãã¿ãŒã³ã¯ã©ã¡ãããã©ãŒã«ããã¬ã©ã³ã¹ã®ããã«äœ¿çšãããŸãããç°ãªãç®çãæãããŸãã
- ãªãã©ã€ãã¿ãŒã³: 倱æããæäœãèªåçã«å詊è¡ããŸããé害ãäžæçãªãã®ã§ãããåŸç¶ã®è©Šè¡ã§æåããå¯èœæ§ããããšæ³å®ããŸããæç¶çãªãããã¯ãŒã¯ã®äžå ·åãäžæçãªãªãœãŒã¹ã®æ¯æžã«åœ¹ç«ã¡ãŸããåºç€ãšãªããµãŒãã¹ãæ¬åœã«ããŠã³ããŠããå Žåãåé¡ãæªåãããå¯èœæ§ããããŸãã
- ãµãŒããããã¬ãŒã«ãŒãã¿ãŒã³: 倱æããŠããæäœã®ç¹°ãè¿ãå®è¡ãé²ããŸããé害ãæç¶çã§ãããšæ³å®ããŸããé£éçãªé害ãé²ããæ éäžã®ãµãŒãã¹ã«ååŸ©ã®æéãäžããã®ã«åœ¹ç«ã¡ãŸãã
å Žåã«ãã£ãŠã¯ããããã®ãã¿ãŒã³ãäžç·ã«äœ¿çšããããšãã§ããŸããäŸãã°ããµãŒããããã¬ãŒã«ãŒå ã«ãªãã©ã€ãã¿ãŒã³ãå®è£ ããããšããããŸãããµãŒãã¹ãäžè²«ããŠå€±æããŠããå ŽåããµãŒããããã¬ãŒã«ãŒã¯éå°ãªãªãã©ã€ãé²ãããªãã©ã€ãã¿ãŒã³ã¯ãµãŒããããã¬ãŒã«ãŒãããªã¬ãŒãããåã«äžæçãªãšã©ãŒãåŠçããŸãã
é¿ããã¹ãã¢ã³ããã¿ãŒã³
ãµãŒããããã¬ãŒã«ãŒã¯åŒ·åãªããŒã«ã§ãããæœåšçãªã¢ã³ããã¿ãŒã³ã«æ³šæããããšãéèŠã§ãïŒ
- äžé©åãªèšå®: 倱æã®ãããå€ãã¿ã€ã ã¢ãŠãæéãé«ãèšå®ããããããäœãèšå®ããããããããšãæ©ãããããªãããäžååãªä¿è·ã«ã€ãªããå¯èœæ§ããããŸãã
- ç£èŠã®æ¬ åŠ: ãµãŒããããã¬ãŒã«ãŒã®ç¶æ ãç£èŠããªããšãæ ¹æ¬çãªåé¡ãç¹å®ããŠè§£æ±ºããããšãã§ããªããªããŸãã
- ãã©ãŒã«ããã¯ã®ç¡èŠ: ãã©ãŒã«ããã¯ã¡ã«ããºã ãæäŸããªããšããµãŒããããã¬ãŒã«ãŒãéããŠãããšãã«ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãäœäžããå¯èœæ§ããããŸãã
- é床ã®äŸå: ãµãŒãã¹ã«ãããåºæ¬çãªä¿¡é Œæ§ã®åé¡ã«å¯ŸåŠãã代ãããšããŠãµãŒããããã¬ãŒã«ãŒã䜿çšããããšããµãŒããããã¬ãŒã«ãŒã¯å®å šçã§ããã解決çã§ã¯ãããŸããã
- äžæµã®äŸåé¢ä¿ãèæ ®ããªãããš: ãµãŒããããã¬ãŒã«ãŒã¯çŽè¿ã®åŒã³åºãå ãä¿è·ããŸããé害ã®äŒæãé²ãããã«ãäžæµã®ãµãŒãã¹ã«ãé©åãªãµãŒããããã¬ãŒã«ãŒãããããšã確èªããŠãã ããã
é«åºŠãªæŠå¿µ
- é©å¿åãããå€: éå»ã®ããã©ãŒãã³ã¹ããŒã¿ã«åºã¥ããŠå€±æã®ãããå€ãåçã«èª¿æŽããŸãã
- ããŒãªã³ã°ãŠã£ã³ããŠ: ããŒãªã³ã°ãŠã£ã³ããŠã䜿çšããŠå€±æçãèšç®ããæè¿ã®ããã©ãŒãã³ã¹ãããæ£ç¢ºã«è¡šçŸããŸãã
- ã³ã³ããã¹ãã«å¿ãããµãŒããããã¬ãŒã«ãŒ: ãªã¯ãšã¹ãã®ã¿ã€ãããŠãŒã¶ãŒããšã«ç°ãªããµãŒããããã¬ãŒã«ãŒãäœæãããããã现ããå¶åŸ¡ãå¯èœã«ããŸãã
- 忣ãµãŒããããã¬ãŒã«ãŒ: 忣ã·ã¹ãã ã®è€æ°ã®ããŒãã«ããã£ãŠãµãŒããããã¬ãŒã«ãŒãå®è£ ããé害ãåé¢ã»å°ã蟌ããããããšãä¿èšŒããŸãã